home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / lib / X11 / config / xfree86.cf < prev    next >
Encoding:
Text File  |  2006-12-20  |  44.7 KB  |  2,172 lines

  1. XCOMM $XFree86: xc/config/cf/xfree86.cf,v 3.466 2004/01/11 18:48:11 dawes Exp $
  2. /*
  3.  * This configuration file contains all of the configuration
  4.  * information for the XFree86 based X Servers.
  5.  *
  6.  * Most of these settings can be overridden in a vendor.cf or the
  7.  * BeforeVendor part of the site.def file.
  8.  */
  9. XCOMM $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
  10.  
  11.  
  12. /* Get and set version information. */
  13.  
  14. #include "version.def"
  15. #include "date.def"
  16. /*
  17.  * As of the development trunk after 4.0.2, XFree86 versions are
  18.  * M.m.P.s, and XFree86Version is:
  19.  *
  20.  *    M * 10000000 + m * 100000 + P * 1000 + s
  21.  *
  22.  * See xc/programs/Xserver/hw/xfree86/doc/Versions for further details.
  23.  *
  24.  * From 3.9.15 to 4.0.x, XFree86 release versions are X.Y.Z, and
  25.  * XFree86Version is:
  26.  *
  27.  *    X * 1000 + Y * 100 + Z
  28.  *
  29.  * For the 3.3.x branch, the versions are X.Y.Z.W, with XFree86Version
  30.  * calculated as:
  31.  *
  32.  *    X * 1000 + Y * 100 + Z * 10 + W
  33.  *
  34.  */
  35. #ifndef XFree86Version
  36. # ifdef XF86_VERSION_CURRENT
  37. #  define XFree86Version    XF86_VERSION_CURRENT
  38. # else    /* Must be defined for bootstrapping purposes */
  39. #  define XFree86Version    0
  40. # endif
  41. #endif
  42.  
  43. #if !defined(XFree86VersionString) && \
  44.     defined(XF86_VERSION_MAJOR) && defined(XF86_VERSION_MINOR) && \
  45.     defined(XF86_VERSION_PATCH) && defined(XF86_VERSION_SNAP)
  46. # if XF86_VERSION_SNAP == 0
  47. #define XFree86VersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH | sed 's/ /./g'`
  48. #else
  49. #define XFree86VersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH XF86_VERSION_SNAP | sed 's/ /./g'`
  50. # endif
  51. #endif
  52.  
  53. #if !defined(XFree86ManVersionString) && \
  54.     defined(XF86_VERSION_MAJOR) && defined(XF86_VERSION_MINOR) && \
  55.     defined(XF86_VERSION_PATCH) && defined(XF86_VERSION_SNAP)
  56. # if XF86_VERSION_SNAP == 0
  57. #define XFree86ManVersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
  58. #else
  59. #define XFree86ManVersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH XF86_VERSION_SNAP | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
  60. # endif
  61. #endif
  62.  
  63. #if !defined(XFree86DateString) && defined(XF86_DATE)
  64. # define XFree86DateString XF86_DATE
  65. #endif
  66.  
  67. #ifndef BuildDateCmd
  68. # define BuildDateCmd    date +%Y%m%d
  69. #endif
  70.  
  71. #if !defined(BuildDate)
  72. # define BuildDate     `BuildDateCmd`
  73. #endif
  74.  
  75. #ifndef ChangelogDateCmd
  76. # define ChangelogDateCmd if tail $(CHANGELOGFILE) | \            @@\
  77.     fgrep '$$XFree86:' >/dev/null 2>&1; then \            @@\
  78.       tail $(CHANGELOGFILE) | fgrep '$$XFree86:' | \        @@\
  79.       sed s,'.* \([0-9][0-9]*\)/\([0-9][0-9]*\)/\([0-9][0-9]*\).*,\1\2\3,'; \ @@\
  80.     else echo 0; fi
  81. #endif
  82.  
  83. #if !defined(ChangelogDate)
  84. # define ChangelogDate    `ChangelogDateCmd`
  85. #endif
  86.  
  87. #ifndef XVendorString
  88. # define XVendorString    "The X.Org Foundation, Inc"
  89. #endif
  90.  
  91. #ifndef XVendorRelease
  92. # define XVendorRelease    XFree86Version
  93. #endif
  94.  
  95. #ifndef XVendorManVersionString
  96. #define XVendorManVersionString XFree86ManVersionString
  97. #endif
  98.  
  99. #ifndef XVendorManNameString
  100. #define XVendorManNameString XFree86
  101. #endif
  102.  
  103. VENDORMANNAME = XVendorManNameString
  104. VENDORMANVERSION = XVendorManVersionString
  105.  
  106. #ifndef VendorManDefs
  107. #define VendorManDefs -D__vendorversion__="\"Version $(VENDORMANVERSION)\" $(VENDORMANNAME)"
  108. #endif
  109.  
  110. /*
  111.  * This enables some settings for developers.
  112.  */
  113.  
  114. #ifndef XFree86Devel
  115. # if !defined(PatheticCpp) || !PatheticCpp
  116. #  if (XFree86Version % 1000)
  117. #   define XFree86Devel        YES
  118. #  else
  119. #   define XFree86Devel        NO
  120. #  endif
  121. # else
  122. #  define XFree86Devel        NO    /* Assume the worst */
  123. # endif
  124. #endif
  125.  
  126. /*
  127.  * No XF86Server for the S/390 platform.
  128.  */
  129. #ifdef s390Architecture
  130. # ifndef XF86Server
  131. #  define XF86Server        NO
  132. # endif
  133. #endif
  134.  
  135. #ifndef BuildDebug
  136. # define BuildDebug         YES
  137. #endif
  138.  
  139. /*
  140.  * settings for the config file parser
  141.  */
  142.  
  143. #ifndef XConfigFile
  144. #define XConfigFile        XF86Config
  145. #endif
  146. #ifndef XConfigDir
  147. #define XConfigDir        $(LIBDIR)
  148. #endif
  149. #ifndef XLogFile
  150. #define XLogFile        XFree86
  151. #endif
  152.  
  153. /*
  154.  * BuildXFree86ConfigTools:
  155.  *
  156.  * Turning this on allows the XFree86 config tools to build when
  157.  * BuildServersOnly is YES.  This requires more than the servonly CVS
  158.  * module.  This cannot be used to disable building the config tools with
  159.  * a full build.
  160.  */
  161. #ifndef BuildXFree86ConfigTools
  162. #ifdef BuildServersOnly
  163. #define BuildXFree86ConfigTools        !BuildServersOnly
  164. #else
  165. #define BuildXFree86ConfigTools        YES
  166. #endif
  167. #endif
  168.  
  169. #ifndef BuildLibrariesForConfigTools
  170. #define BuildLibrariesForConfigTools    BuildXFree86ConfigTools
  171. #endif
  172.  
  173. #if BuildXFree86ConfigTools && BuildLibrariesForConfigTools
  174. #define BuildLibraries        YES
  175. #define BuildXF86MiscLibrary    YES
  176. #define BuildXF86VidModeLibrary    YES
  177. #define BuildXKBlib        YES
  178. #define BuildXKBfilelib        YES
  179. #define BuildXKBuilib        YES
  180. #endif
  181.  
  182. /*
  183.  * When this is set, modules are always built separately from the libraries
  184.  * that statically link into an Xserver.  This is for platforms where the
  185.  * module and native object formats are different (e.g., OS/2).
  186.  */
  187. #ifndef BuildModuleInSubdir
  188. #define BuildModuleInSubdir    NO
  189. #endif
  190.  
  191. #ifndef MakeDllModules
  192. #define MakeDllModules        NO
  193. #endif
  194. #ifndef DoLoadableServer
  195. #define DoLoadableServer    NO
  196. #endif 
  197.  
  198. /*
  199.  * Default settings for which X Servers to build.
  200.  */
  201.  
  202. /* OS.cf files may set this for OS-specific input drivers */
  203. #ifndef OSXInputDrivers
  204. #define OSXInputDrivers /**/
  205. #endif
  206.  
  207. /* This may be set in host.def for 3rd party input drivers */
  208. #ifndef ExtraXInputDrivers
  209. #define ExtraXInputDrivers /**/
  210. #endif
  211.  
  212. /* XInput drivers */
  213. #ifndef XInputDrivers
  214. #define XInputDrivers        mouse keyboard acecad calcomp citron \
  215.                 digitaledge dmc dynapro elographics tek4957 \
  216.                 microtouch mutouch penmount spaceorb summa \
  217.                 wacom void magellan /* magictouch */ hyperpen \
  218.                 jamstudio fpit \
  219.                 palmax OSXInputDrivers ExtraXInputDrivers
  220. #endif
  221.  
  222. /* <linux/input.h> support mainly for USB support */
  223. #ifndef HasLinuxInput
  224. # define HasLinuxInput NO
  225. #endif
  226.  
  227. /* OS.cf files may set this for OS-specific drivers */
  228. #ifndef XF86OSCardDrivers
  229. #define XF86OSCardDrivers /**/
  230. #endif
  231.  
  232. /* This may be set in host.def for 3rd party drivers */
  233. #ifndef XF86ExtraCardDrivers
  234. #define XF86ExtraCardDrivers /**/
  235. #endif
  236.  
  237. /* OS.cf files may set this for OS-specific drivers */
  238. #ifndef HasAgpGart
  239. #define HasAgpGart NO
  240. #endif
  241.  
  242. /* The glide driver only works for the loadable server at the moment */
  243. #ifndef HasGlide2
  244. #define HasGlide2 NO
  245. #endif
  246. #if HasGlide2 && DoLoadableServer
  247. #define GlideDriver glide
  248. #else
  249. #define GlideDriver /**/
  250. #endif
  251.  
  252. /* The tdfx DRI driver can only be built if glide3 is available. */
  253. #ifndef HasGlide3
  254. #define HasGlide3 NO
  255. #endif
  256.  
  257. /*
  258.  * There are three parameters that determine where and how the Matrox HAL
  259.  * library is used:
  260.  *
  261.  *   HaveMatroxHal  -- You have the HALlib.a binary library installed
  262.  *                     in xfree86/drivers/mga/HALlib, and you want it to
  263.  *                     be used.
  264.  *                     Default: NO
  265.  *
  266.  *   BuildMatroxHal -- You have the source for the HALlib library (installed
  267.  *                     in xfree86/drivers/mga/hallib), and want to build and
  268.  *                     use it.
  269.  *                     Default: NO
  270.  *
  271.  *   UseMatroxHal   -- You want to build support for loading/using the HAL
  272.  *                     library into the mga driver.  For module server builds
  273.  *                     you don't need to have the HALlib library to do this.
  274.  *                     but you want to build support for loading it and using
  275.  *                     it into the mga driver module.
  276.  *                     Default: YES for loadable server build
  277.  *                              (HaveMatroxHal || BuildMatroxHal) for static
  278.  */
  279.  
  280. #ifndef HaveMatroxHal
  281. #define HaveMatroxHal NO
  282. #endif
  283.  
  284. #ifndef BuildMatroxHal
  285. #define BuildMatroxHal NO
  286. #endif
  287.  
  288. #ifndef UseMatroxHal
  289. #if DoLoadableServer
  290. #define UseMatroxHal YES
  291. #else
  292. #define UseMatroxHal (HaveMatroxHal || BuildMatroxHal)
  293. #endif
  294. #endif
  295.  
  296. /*
  297.  * For Intel platforms, the default is to build all modules which
  298.  * are supported on this platform.
  299.  */
  300. #if defined(i386Architecture) || defined(ia64Architecture)
  301. # ifndef XF86Server
  302. #  define XF86Server        YES
  303. # endif
  304. /* 1bpp module */
  305. # ifndef XF1Bpp
  306. #  define XF1Bpp        YES
  307. # endif
  308. /* 4bpp module */
  309. # ifndef XF4Bpp
  310. #  define XF4Bpp        YES
  311. # endif
  312. /* 8/32bpp overlay module */
  313. # ifndef XF8_32Bpp
  314. #  define XF8_32Bpp        YES
  315. # endif
  316. /* 8/16bpp dual fb module */
  317. # ifndef XF8_16Bpp
  318. #  define XF8_16Bpp        YES
  319. # endif
  320. /* 24/32bpp conversion module */
  321. # ifndef XF24_32Bpp
  322. #  define XF24_32Bpp        YES
  323. # endif
  324. /* shadow fb module */
  325. # ifndef XFShadowFB
  326. #  define XFShadowFB        YES
  327. # endif
  328. /* vgahw module */
  329. # ifndef XF86VgaHw
  330. #  define XF86VgaHw        YES
  331. # endif
  332. /* fbdevhw module */
  333. # ifndef XF86FBDevHw
  334. #  define XF86FBDevHw        YES
  335. # endif
  336. /* XAA module */
  337. # ifndef XF86XAA
  338. #  define XF86XAA        YES
  339. # endif
  340. /* EXA module */
  341. # ifndef XF86EXA
  342. #  define XF86EXA        YES
  343. # endif
  344. /* ramdac module */
  345. # ifndef XF86Ramdac
  346. #  define XF86Ramdac        YES
  347. # endif
  348. /* I2C module */
  349. # ifndef XF86I2C
  350. #  define XF86I2C        YES
  351. # endif
  352. /* DDC module */
  353. # ifndef XF86DDC
  354. #  define XF86DDC        YES
  355. # endif
  356. /* RAC (Resource Access Control) module */
  357. # ifndef XF86RAC
  358. #  define XF86RAC        YES
  359. # endif
  360. /* int10 module */
  361. # ifndef XF86Int10
  362. #  define XF86Int10        YES
  363. # endif
  364. /* vbe module */
  365. # ifndef XF86VBE
  366. #  define XF86VBE        YES
  367. # endif
  368.  
  369. /*
  370.  * Amiga framebuffer module.
  371.  * This is mostly for build testing, but the vesa driver references it.
  372.  */
  373. # ifndef XF86AFB
  374. #  define XF86AFB        YES
  375. # endif
  376.  
  377. # define AgpGartDrivers    /**/
  378.  
  379. /*
  380.  * Drivers under development, but not ready for binary releases, or
  381.  * drivers included on this platform only for build testing.
  382.  */
  383. # ifndef DevelDrivers
  384. #  if XFree86Devel
  385. #   define DevelDrivers        imstt newport
  386. #  else
  387. #   define DevelDrivers        /**/
  388. #  endif
  389. # endif
  390.  
  391. /* Pure PCI drivers should go first */
  392. # ifndef XF86CardDrivers
  393. #  /* Don't build the nsc driver on IA64 */
  394. #  ifndef ia64Architecture
  395. #   define NscDriver        nsc
  396. #   define ViaDriver        via
  397. #  else
  398. #   define NscDriver        /**/
  399. #   define ViaDriver        /**/
  400. #  endif
  401. #  define XF86CardDrivers    mga glint nv tga s3 s3virge sis rendition \
  402.                 neomagic i740 tdfx savage \
  403.                 cirrus vmware tseng trident chips apm \
  404.                 GlideDriver i128 NscDriver \
  405.                 ati i810 AgpGartDrivers DevelDrivers ark \
  406.                 cyrix siliconmotion ViaDriver \
  407.                 fbdev vesa vga \
  408.                 dummy XF86OSCardDrivers XF86ExtraCardDrivers
  409. # endif
  410.  
  411. /*
  412.  * DRI drivers under development, or drivers included on this platform
  413.  * only for build testing.
  414.  */
  415. # ifndef DevelDRIDrivers
  416. #  if XFree86Devel
  417. #   define DevelDRIDrivers    ffb
  418. #  else
  419. #   define DevelDRIDrivers    /**/
  420. #  endif
  421. # endif
  422.  
  423. # ifndef DriDrivers
  424. #  define DriDrivers        gamma i810 i830 mga r128 radeon r200 \
  425.                 sis tdfx DevelDRIDrivers
  426. # endif
  427. #endif
  428.  
  429. #if defined(AMD64Architecture)
  430. # ifndef XF86Server
  431. #  define XF86Server        YES
  432. # endif
  433. /* 1bpp module */
  434. # ifndef XF1Bpp
  435. #  define XF1Bpp        YES
  436. # endif
  437. /* 4bpp module */
  438. # ifndef XF4Bpp
  439. #  define XF4Bpp        YES
  440. # endif
  441. /* 8/32bpp overlay module */
  442. # ifndef XF8_32Bpp
  443. #  define XF8_32Bpp        YES
  444. # endif
  445. /* 8/16bpp dual fb module */
  446. # ifndef XF8_16Bpp
  447. #  define XF8_16Bpp        YES
  448. # endif
  449. /* 24/32bpp conversion module */
  450. # ifndef XF24_32Bpp
  451. #  define XF24_32Bpp        YES
  452. # endif
  453. /* shadow fb module */
  454. # ifndef XFShadowFB
  455. #  define XFShadowFB        YES
  456. # endif
  457. /* vgahw module */
  458. # ifndef XF86VgaHw
  459. #  define XF86VgaHw        YES
  460. # endif
  461. /* fbdevhw module */
  462. # ifndef XF86FBDevHw
  463. #  define XF86FBDevHw        YES
  464. # endif
  465. /* XAA module */
  466. # ifndef XF86XAA
  467. #  define XF86XAA        YES
  468. # endif
  469. /* EXA module */
  470. # ifndef XF86EXA
  471. #  define XF86EXA        YES
  472. # endif
  473. /* ramdac module */
  474. # ifndef XF86Ramdac
  475. #  define XF86Ramdac        YES
  476. # endif
  477. /* I2C module */
  478. # ifndef XF86I2C
  479. #  define XF86I2C        YES
  480. # endif
  481. /* DDC module */
  482. # ifndef XF86DDC
  483. #  define XF86DDC        YES
  484. # endif
  485. /* RAC (Resource Access Control) module */
  486. # ifndef XF86RAC
  487. #  define XF86RAC        YES
  488. # endif
  489.  
  490. /* int10 module */
  491. # ifndef XF86Int10
  492. #  define XF86Int10        YES
  493. # endif
  494. /* vbe module */
  495. # ifndef XF86VBE
  496. #  define XF86VBE        YES
  497. # endif
  498.  
  499. # define AgpGartDrivers    /**/
  500.  
  501. # define DevelDrivers        /**/
  502.  
  503. /* Pure PCI drivers should go first */
  504. # ifndef XF86CardDrivers
  505. #  define XF86CardDrivers    mga glint nv tga s3 s3virge sis rendition \
  506.                 neomagic tdfx savage cirrus tseng trident \
  507.                 chips apm i128 ati ark cyrix siliconmotion \
  508.                 vga dummy fbdev vesa
  509. # endif
  510.  
  511. # if HasGlide3
  512. #  define TdfxDriDriver        tdfx
  513. # else
  514. #  define TdfxDriDriver        /**/
  515. #endif
  516.  
  517. # define DevelDRIDrivers    /**/
  518.  
  519. # define DriDrivers        gamma i810 mga r128 radeon r200 \
  520.                 TdfxDriDriver DevelDRIDrivers
  521. #endif /*AMD64Arcitecture*/
  522.  
  523. /* SPARC and UltraSPARC drivers */
  524.  
  525. #if  (defined(SparcArchitecture) || defined(Sparc64Architecture)) && \
  526.     !defined(LynxOSArchitecture) && \
  527.     !defined(NetBSDArchitecture) && \
  528.     !defined(OpenBSDArchitecture)
  529. # ifndef XF86Server
  530. #  define XF86Server        YES
  531. # endif
  532. /* 1bpp module */
  533. # ifndef XF1Bpp
  534. #  define XF1Bpp        YES
  535. # endif
  536. /* 4bpp module */
  537. # ifndef XF4Bpp
  538. #  define XF4Bpp        YES
  539. # endif
  540. /* 8/32wid fb module */
  541. # ifndef XF8_32Wid
  542. #  define XF8_32Wid        YES
  543. # endif
  544. /* 8/32bpp overlay module */
  545. # ifndef XF8_32Bpp
  546. #  define XF8_32Bpp        YES
  547. # endif
  548. /* 8/16bpp dual fb module */
  549. # ifndef XF8_16Bpp
  550. #  define XF8_16Bpp        YES
  551. # endif
  552. /* 24/32bpp conversion module */
  553. # ifndef XF24_32Bpp
  554. #  define XF24_32Bpp        YES
  555. # endif
  556. /* shadow fb module */
  557. # ifndef XFShadowFB
  558. #  define XFShadowFB        YES
  559. # endif
  560. /* vgahw module */
  561. # ifndef XF86VgaHw
  562. #  define XF86VgaHw        YES
  563. # endif
  564. /* fbdevhw module */
  565. # ifndef XF86FBDevHw
  566. #  define XF86FBDevHw        YES
  567. # endif
  568. /* XAA module */
  569. # ifndef XF86XAA
  570. #  define XF86XAA        YES
  571. # endif
  572. /* EXA module */
  573. # ifndef XF86EXA
  574. #  define XF86EXA        YES
  575. # endif
  576. /* ramdac module */
  577. # ifndef XF86Ramdac
  578. #  define XF86Ramdac        YES
  579. # endif
  580. /* I2C module */
  581. # ifndef XF86I2C
  582. #  define XF86I2C        YES
  583. # endif
  584. /* DDC module */
  585. # ifndef XF86DDC
  586. #  define XF86DDC        YES
  587. # endif
  588. /* RAC (Resource Access Control) module */
  589. # ifndef XF86RAC
  590. #  define XF86RAC        YES
  591. # endif
  592. /* int10 module */
  593. # ifndef XF86Int10
  594. #  define XF86Int10        YES
  595. # endif
  596. /* vbe module */
  597. # ifndef XF86VBE
  598. #  define XF86VBE        YES
  599. # endif
  600.  
  601. # ifndef DevelDrivers
  602. #  if XFree86Devel
  603.    /*
  604.     * Some of these are compiled just for the fun of it.  Undoubtedly some
  605.     * require changes (or even removal) for things like endianness, etc.  Move
  606.     * those known to work into the main XF86CardDrivers #define.
  607.     */
  608. #   define DevelDrivers        apm ark chips cirrus i128 i740 imstt \
  609.                 neomagic nv rendition s3virge savage \
  610.                 siliconmotion trident dummy
  611. #  else
  612. #   define DevelDrivers        /* */
  613. #  endif
  614. # endif
  615.  
  616. /* Pure SBUS and PCI drivers should go first */
  617. # ifndef XF86CardDrivers
  618. #  define XF86CardDrivers    sunffb sunleo suncg6 suncg3 suncg14 suntcx \
  619.                 sunbw2 glint mga tdfx ati vesa vga fbdev \
  620.                 XF86OSCardDrivers XF86ExtraCardDrivers \
  621.                 DevelDrivers
  622. # endif
  623. # ifndef DriDrivers
  624. #  define DriDrivers        ffb
  625. # endif
  626.  
  627. #endif
  628.  
  629. /* Sparc64 Drivers */
  630. #if defined(OpenBSDArchitecture) && defined(Sparc64Architecture)
  631. # ifndef XF86Server
  632. #  define XF86Server        YES
  633. # endif
  634. /* Amiga framebuffer module */
  635. # ifndef XF86AFB
  636. #  define XF86AFB        NO
  637. # endif
  638. /* 1bpp module */
  639. # ifndef XF1Bpp
  640. #  define XF1Bpp        YES
  641. # endif
  642. /* 4bpp module */
  643. # ifndef XF4Bpp
  644. #  define XF4Bpp        YES
  645. # endif
  646. /* 8/32bpp overlay module */
  647. # ifndef XF8_32Bpp
  648. #  define XF8_32Bpp        YES
  649. # endif
  650. /* 8/16bpp dual fb module */
  651. # ifndef XF8_16Bpp
  652. #  define XF8_16Bpp        YES
  653. # endif
  654. /* 24/32bpp conversion module */
  655. # ifndef XF24_32Bpp
  656. #  define XF24_32Bpp        YES
  657. # endif
  658. /* shadow fb module */
  659. # ifndef XFShadowFB
  660. #  define XFShadowFB        YES
  661. # endif
  662. /* vgahw module */
  663. # ifndef XF86VgaHw
  664. #  define XF86VgaHw        YES
  665. # endif
  666. /* fbdevhw module */
  667. # ifndef XF86FBDevHw
  668. #  define XF86FBDevHw        YES
  669. # endif
  670. /* XAA module */
  671. # ifndef XF86XAA
  672. #  define XF86XAA        YES
  673. # endif
  674. /* EXA module */
  675. # ifndef XF86EXA
  676. #  define XF86EXA        YES
  677. # endif
  678. /* ramdac module */
  679. # ifndef XF86Ramdac
  680. #  define XF86Ramdac        YES
  681. # endif
  682. /* I2C module */
  683. # ifndef XF86I2C
  684. #  define XF86I2C        YES
  685. # endif
  686. /* DDC module */
  687. # ifndef XF86DDC
  688. #  define XF86DDC        YES
  689. # endif
  690. /* RAC (Resource Access Control) module */
  691. # ifndef XF86RAC
  692. #  define XF86RAC        YES
  693. # endif
  694.  
  695. /* int10 module */
  696. # ifndef XF86Int10
  697. #  define XF86Int10        YES
  698. # endif
  699. # ifndef UseX86Emu
  700. #  define UseX86Emu        NO
  701. # endif
  702. /* vbe module */
  703. # ifndef XF86VBE
  704. #  define XF86VBE        YES
  705. # endif
  706.  
  707. # ifndef DevelDrivers
  708. #  if XFree86Devel
  709. #   define DevelDrivers        /* */
  710. #  else
  711. #   define DevelDrivers        /* */
  712. #  endif
  713. # endif
  714.  
  715. /* Pure PCI drivers should go first */
  716. # ifndef XF86CardDrivers
  717. #  define XF86CardDrivers    ati \
  718.                 DevelDrivers \
  719.                 XF86OSCardDrivers XF86ExtraCardDrivers
  720. # endif
  721. # define TdfxDriDriver        /**/
  722. # ifndef DriDrivers
  723. #  define DriDrivers        /**/
  724. # endif
  725. #endif
  726.  
  727. /* MIPS drivers */
  728.  
  729. #ifdef MipsArchitecture
  730. # ifndef XF86Server
  731. #  define XF86Server        YES
  732. # endif
  733. /* 1bpp module */
  734. # ifndef XF1Bpp
  735. #  define XF1Bpp        YES
  736. # endif
  737. /* 4bpp module */
  738. # ifndef XF4Bpp
  739. #  define XF4Bpp        YES
  740. # endif
  741. /* 8/32bpp overlay module */
  742. # ifndef XF8_32Bpp
  743. #  define XF8_32Bpp        YES
  744. # endif
  745. /* 8/16bpp dual fb module */
  746. # ifndef XF8_16Bpp
  747. #  define XF8_16Bpp        YES
  748. # endif
  749. /* 24/32bpp conversion module */
  750. # ifndef XF24_32Bpp
  751. #  define XF24_32Bpp        YES
  752. # endif
  753. /* shadow fb module */
  754. # ifndef XFShadowFB
  755. #  define XFShadowFB        YES
  756. # endif
  757. /* vgahw module */
  758. # ifndef XF86VgaHw
  759. #  define XF86VgaHw        YES
  760. # endif
  761. /* fbdevhw module */
  762. # ifndef XF86FBDevHw
  763. #  define XF86FBDevHw        YES
  764. # endif
  765. /* XAA module */
  766. # ifndef XF86XAA
  767. #  define XF86XAA        YES
  768. # endif
  769. /* Exa module */
  770. # ifndef XF86EXA
  771. #  define XF86EXA        YES
  772. # endif
  773. /* ramdac module */
  774. # ifndef XF86Ramdac
  775. #  define XF86Ramdac        YES
  776. # endif
  777. /* I2C module */
  778. # ifndef XF86I2C
  779. #  define XF86I2C        YES
  780. # endif
  781. /* DDC module */
  782. # ifndef XF86DDC
  783. #  define XF86DDC        YES
  784. # endif
  785. /* RAC (Resource Access Control) module */
  786. # ifndef XF86RAC
  787. #  define XF86RAC        YES
  788. # endif
  789.  
  790. /* int10 module */
  791. # ifndef XF86Int10
  792. #  define XF86Int10        YES
  793. # endif
  794. /* vbe module */
  795. # ifndef XF86VBE
  796. #  define XF86VBE        YES
  797. # endif
  798.  
  799. # ifndef DevelDrivers
  800. #  if XFree86Devel
  801. #   define DevelDrivers        /* */
  802. #  else
  803. #   define DevelDrivers        /* */
  804. #  endif
  805. # endif
  806.  
  807. # ifndef XF86CardDrivers
  808. #  define XF86CardDrivers    mga glint nv s3 s3virge sis savage \
  809.                 trident chips tdfx fbdev ati \
  810.                 DevelDrivers newport \
  811.                 XF86OSCardDrivers XF86ExtraCardDrivers
  812. # endif
  813. #endif
  814.  
  815. /*
  816.  * DEC Alpha drivers
  817.  */
  818. #ifdef AlphaArchitecture
  819. # ifndef XF86Server
  820. #  define XF86Server        YES
  821. # endif
  822. /* 1bpp module */
  823. # ifndef XF1Bpp
  824. #  define XF1Bpp        YES
  825. # endif
  826. /* 4bpp module */
  827. # ifndef XF4Bpp
  828. #  define XF4Bpp        YES
  829. # endif
  830. /* 8/32bpp overlay module */
  831. # ifndef XF8_32Bpp
  832. #  define XF8_32Bpp        YES
  833. # endif
  834. /* 8/16bpp dual fb module */
  835. # ifndef XF8_16Bpp
  836. #  define XF8_16Bpp        YES
  837. # endif
  838. /* 24/32bpp conversion module */
  839. # ifndef XF24_32Bpp
  840. #  define XF24_32Bpp        YES
  841. # endif
  842. /* shadow fb module */
  843. # ifndef XFShadowFB
  844. #  define XFShadowFB        YES
  845. # endif
  846. /* vgahw module */
  847. # ifndef XF86VgaHw
  848. #  define XF86VgaHw        YES
  849. # endif
  850. /* fbdevhw module */
  851. # ifndef XF86FBDevHw
  852. #  define XF86FBDevHw        YES
  853. # endif
  854. /* XAA module */
  855. # ifndef XF86XAA
  856. #  define XF86XAA        YES
  857. # endif
  858. /* Exa module */
  859. # ifndef XF86EXA
  860. #  define XF86EXA        YES
  861. # endif
  862. /* ramdac module */
  863. # ifndef XF86Ramdac
  864. #  define XF86Ramdac        YES
  865. # endif
  866. /* I2C module */
  867. # ifndef XF86I2C
  868. #  define XF86I2C        YES
  869. # endif
  870. /* DDC module */
  871. # ifndef XF86DDC
  872. #  define XF86DDC        YES
  873. # endif
  874. /* RAC (Resource Access Control) module */
  875. # ifndef XF86RAC
  876. #  define XF86RAC        YES
  877. # endif
  878. /* int10 module */
  879. # ifndef XF86Int10
  880. #  define XF86Int10        YES
  881. # endif
  882. /* vbe module */
  883. # ifndef XF86VBE
  884. #  define XF86VBE        YES
  885. # endif
  886.  
  887. # ifndef DevelDrivers
  888. #  if XFree86Devel
  889. #   define DevelDrivers        /* */
  890. #  else
  891. #   define DevelDrivers        /* */
  892. #  endif
  893. # endif
  894.  
  895. /* Pure PCI drivers should go first */
  896. # ifndef XF86CardDrivers
  897. #  define XF86CardDrivers    mga tdfx glint s3 s3virge rendition tga ati \
  898.                 savage nv cirrus DevelDrivers siliconmotion  \
  899.                 vga XF86OSCardDrivers XF86ExtraCardDrivers
  900. # endif
  901. # if HasGlide3
  902. #  define TdfxDriDriver        tdfx
  903. # else
  904. #  define TdfxDriDriver        /**/
  905. # endif
  906. # ifndef DriDrivers
  907. #  define DriDrivers        gamma tdfx mga r128 radeon r200 /*sis*/ \
  908.                 TdfxDriDriver
  909. # endif
  910. #endif
  911.  
  912. /*
  913.  * Motorola 68k and PowerPC drivers
  914.  */
  915. #if defined(PpcArchitecture) || defined(Mc68020Architecture)
  916. # ifndef XF86Server
  917. #  define XF86Server        YES
  918. # endif
  919. /* Amiga framebuffer module */
  920. # ifndef XF86AFB
  921. #  define XF86AFB        YES
  922. # endif
  923. /* 1bpp module */
  924. # ifndef XF1Bpp
  925. #  define XF1Bpp        YES
  926. # endif
  927. /* 4bpp module */
  928. # ifndef XF4Bpp
  929. #  define XF4Bpp        YES
  930. # endif
  931. /* 8/32bpp overlay module */
  932. # ifndef XF8_32Bpp
  933. #  define XF8_32Bpp        YES
  934. # endif
  935. /* 8/16bpp dual fb module */
  936. # ifndef XF8_16Bpp
  937. #  define XF8_16Bpp        YES
  938. # endif
  939. /* 24/32bpp conversion module */
  940. # ifndef XF24_32Bpp
  941. #  define XF24_32Bpp        YES
  942. # endif
  943. /* shadow fb module */
  944. # ifndef XFShadowFB
  945. #  define XFShadowFB        YES
  946. # endif
  947. /* vgahw module */
  948. # ifndef XF86VgaHw
  949. #  define XF86VgaHw        YES
  950. # endif
  951. /* fbdevhw module */
  952. # ifndef XF86FBDevHw
  953. #  define XF86FBDevHw        YES
  954. # endif
  955. /* XAA module */
  956. # ifndef XF86XAA
  957. #  define XF86XAA        YES
  958. # endif
  959. /* Exa module */
  960. # ifndef XF86EXA
  961. #  define XF86EXA        YES
  962. # endif
  963. /* ramdac module */
  964. # ifndef XF86Ramdac
  965. #  define XF86Ramdac        YES
  966. # endif
  967. /* I2C module */
  968. # ifndef XF86I2C
  969. #  define XF86I2C        YES
  970. # endif
  971. /* DDC module */
  972. # ifndef XF86DDC
  973. #  define XF86DDC        YES
  974. # endif
  975. /* RAC (Resource Access Control) module */
  976. # ifndef XF86RAC
  977. #  define XF86RAC        YES
  978. # endif
  979. /* int10 module */
  980. # ifndef XF86Int10
  981. #  define XF86Int10        YES
  982. # endif
  983. /* vbe module */
  984. # ifndef XF86VBE
  985. #  define XF86VBE        YES
  986. # endif
  987.  
  988. # ifndef DevelDrivers
  989. #  if XFree86Devel
  990. #   define DevelDrivers        imstt
  991. #  else
  992. #   define DevelDrivers        /* */
  993. #  endif
  994. # endif
  995.  
  996. /* Pure PCI drivers should go first */
  997. # ifndef XF86CardDrivers
  998. #  define XF86CardDrivers    ati mga glint nv s3 s3virge sis savage\
  999.                 trident chips tdfx fbdev \
  1000.                 DevelDrivers vga \
  1001.                 XF86OSCardDrivers XF86ExtraCardDrivers
  1002. # endif
  1003. # if HasGlide3
  1004. #  define TdfxDriDriver        tdfx
  1005. # else
  1006. #  define TdfxDriDriver        /**/
  1007. # endif
  1008. # ifndef DriDrivers
  1009. #  define DriDrivers        gamma TdfxDriDriver mga r128 radeon r200
  1010. # endif
  1011. #endif
  1012.  
  1013. /*
  1014.  * Intel StrongARM and Hewlett-Packard PA-RISC
  1015.  */
  1016. #if defined(Arm32Architecture) || defined(HPArchitecture)
  1017. # ifndef XF86Server
  1018. #  define XF86Server        YES
  1019. # endif
  1020. /* 1bpp module */
  1021. # ifndef XF1Bpp
  1022. #  define XF1Bpp        YES
  1023. # endif
  1024. /* 4bpp module */
  1025. # ifndef XF4Bpp
  1026. #  define XF4Bpp        YES
  1027. # endif
  1028. /* 8/32bpp overlay module */
  1029. # ifndef XF8_32Bpp
  1030. #  define XF8_32Bpp        YES
  1031. # endif
  1032. /* 8/16bpp dual fb module */
  1033. # ifndef XF8_16Bpp
  1034. #  define XF8_16Bpp        YES
  1035. # endif
  1036. /* 24/32bpp conversion module */
  1037. # ifndef XF24_32Bpp
  1038. #  define XF24_32Bpp        YES
  1039. # endif
  1040. /* shadow fb module */
  1041. # ifndef XFShadowFB
  1042. #  define XFShadowFB        YES
  1043. # endif
  1044. /* vgahw module */
  1045. # ifndef XF86VgaHw
  1046. #  define XF86VgaHw        YES
  1047. # endif
  1048. /* fbdevhw module */
  1049. # ifndef XF86FBDevHw
  1050. #  define XF86FBDevHw        YES
  1051. # endif
  1052. /* XAA module */
  1053. # ifndef XF86XAA
  1054. #  define XF86XAA        YES
  1055. # endif
  1056. /* Exa module */
  1057. # ifndef XF86EXA
  1058. #  define XF86EXA        YES
  1059. # endif
  1060. /* ramdac module */
  1061. # ifndef XF86Ramdac
  1062. #  define XF86Ramdac        YES
  1063. # endif
  1064. /* I2C module */
  1065. # ifndef XF86I2C
  1066. #  define XF86I2C        YES
  1067. # endif
  1068. /* DDC module */
  1069. # ifndef XF86DDC
  1070. #  define XF86DDC        YES
  1071. # endif
  1072. /* RAC (Resource Access Control) module */
  1073. # ifndef XF86RAC
  1074. #  define XF86RAC        YES
  1075. # endif
  1076. /* int10 module */
  1077. # ifndef XF86Int10
  1078. #  define XF86Int10        YES
  1079. # endif
  1080. /* vbe module */
  1081. # ifndef XF86VBE
  1082. #  define XF86VBE        YES
  1083. # endif
  1084.  
  1085. # ifndef DevelDrivers
  1086. #  if XFree86Devel
  1087. #   define DevelDrivers        /* */
  1088. #  else
  1089. #   define DevelDrivers        /* */
  1090. #  endif
  1091. # endif
  1092.  
  1093. /* Pure PCI drivers should go first */
  1094. # ifndef XF86CardDrivers
  1095. #  define XF86CardDrivers    ati mga glint nv s3 s3virge sis savage\
  1096.                 trident chips tdfx fbdev \
  1097.                 DevelDrivers vga \
  1098.                 XF86OSCardDrivers XF86ExtraCardDrivers
  1099. # endif
  1100. # if HasGlide3
  1101. #  define TdfxDriDriver        tdfx
  1102. # else
  1103. #  define TdfxDriDriver        /**/
  1104. # endif
  1105. # ifndef DriDrivers
  1106. #  define DriDrivers        gamma TdfxDriDriver mga r128 radeon r200
  1107. # endif
  1108. #endif
  1109.  
  1110. /* SuperH drivers */
  1111.  
  1112. #if defined(SuperHArchitecture)
  1113. # ifndef XF86Server
  1114. #  define XF86Server        YES
  1115. # endif
  1116. /* 1bpp module */
  1117. # ifndef XF1Bpp
  1118. #  define XF1Bpp        YES
  1119. # endif
  1120. /* 4bpp module */
  1121. # ifndef XF4Bpp
  1122. #  define XF4Bpp        YES
  1123. # endif
  1124. /* 8/32bpp overlay module */
  1125. # ifndef XF8_32Bpp
  1126. #  define XF8_32Bpp        YES
  1127. # endif
  1128. /* 8/16bpp dual fb module */
  1129. # ifndef XF8_16Bpp
  1130. #  define XF8_16Bpp        YES
  1131. # endif
  1132. /* 24/32bpp conversion module */
  1133. # ifndef XF24_32Bpp
  1134. #  define XF24_32Bpp        YES
  1135. # endif
  1136. /* shadow fb module */
  1137. # ifndef XFShadowFB
  1138. #  define XFShadowFB        YES
  1139. # endif
  1140. /* fbdevhw module */
  1141. # ifndef XF86FBDevHw
  1142. #  define XF86FBDevHw        YES
  1143. # endif
  1144. /* XAA module */
  1145. # ifndef XF86XAA
  1146. #  define XF86XAA        YES
  1147. # endif
  1148. /* Exa module */
  1149. # ifndef XF86EXA
  1150. #  define XF86EXA        YES
  1151. # endif
  1152. /* ramdac module */
  1153. # ifndef XF86Ramdac
  1154. #  define XF86Ramdac        YES
  1155. # endif
  1156. /* I2C module */
  1157. # ifndef XF86I2C
  1158. #  define XF86I2C        YES
  1159. # endif
  1160. /* DDC module */
  1161. # ifndef XF86DDC
  1162. #  define XF86DDC        YES
  1163. # endif
  1164. /* RAC (Resource Access Control) module */
  1165. # ifndef XF86RAC
  1166. #  define XF86RAC        YES
  1167. # endif
  1168. /* int10 module */
  1169. # ifndef XF86Int10
  1170. #  define XF86Int10        YES
  1171. # endif
  1172. /* vbe module */
  1173. # ifndef XF86VBE
  1174. #  define XF86VBE        YES
  1175. # endif
  1176.  
  1177. # ifndef XF86CardDrivers
  1178. #  define XF86CardDrivers        fbdev XF86OSCardDrivers XF86ExtraCardDrivers
  1179. # endif
  1180. #endif
  1181.  
  1182. /*
  1183.  * For PowerPC 64bit systems
  1184.  * only libraries are strictly needed
  1185.  */
  1186. #if defined(Ppc64Architecture)
  1187. # ifndef XF86Server
  1188. #  define XF86Server        YES
  1189. # endif
  1190. /* Amiga framebuffer module */
  1191. # ifndef XF86AFB
  1192. #  define XF86AFB        NO
  1193. # endif
  1194. /* 1bpp module */
  1195. # ifndef XF1Bpp
  1196. #  define XF1Bpp        NO
  1197. # endif
  1198. /* 4bpp module */
  1199. # ifndef XF4Bpp
  1200. #  define XF4Bpp        NO
  1201. # endif
  1202. /* 8/32bpp overlay module */
  1203. # ifndef XF8_32Bpp
  1204. #  define XF8_32Bpp        YES
  1205. # endif
  1206. /* 8/16bpp dual fb module */
  1207. # ifndef XF8_16Bpp
  1208. #  define XF8_16Bpp        YES
  1209. # endif
  1210. /* 24/32bpp conversion module */
  1211. # ifndef XF24_32Bpp
  1212. #  define XF24_32Bpp        YES
  1213. # endif
  1214. /* shadow fb module */
  1215. # ifndef XFShadowFB
  1216. #  define XFShadowFB        YES
  1217. # endif
  1218. /* vgahw module */
  1219. # ifndef XF86VgaHw
  1220. #  define XF86VgaHw        NO
  1221. # endif
  1222. /* fbdevhw module */
  1223. # ifndef XF86FBDevHw
  1224. #  define XF86FBDevHw        YES
  1225. # endif
  1226. /* XAA module */
  1227. # ifndef XF86XAA
  1228. #  define XF86XAA        YES
  1229. # endif
  1230. /* Exa module */
  1231. # ifndef XF86EXA
  1232. #  define XF86EXA        YES
  1233. # endif
  1234. /* ramdac module */
  1235. # ifndef XF86Ramdac
  1236. #  define XF86Ramdac        YES
  1237. # endif
  1238. /* I2C module */
  1239. # ifndef XF86I2C
  1240. #  define XF86I2C        YES
  1241. # endif
  1242. /* DDC module */
  1243. # ifndef XF86DDC
  1244. #  define XF86DDC        YES
  1245. # endif
  1246. /* RAC (Resource Access Control) module */
  1247. # ifndef XF86RAC
  1248. #  define XF86RAC        YES
  1249. # endif
  1250.  
  1251. /* int10 module */
  1252. # ifndef XF86Int10
  1253. #  define XF86Int10        YES
  1254. # endif
  1255.  
  1256. # ifndef DevelDrivers
  1257. #  if XFree86Devel
  1258. #   define DevelDrivers        
  1259. #  else
  1260. #   define DevelDrivers        /* */
  1261. #  endif
  1262. # endif
  1263.  
  1264. /* Pure PCI drivers should go first */
  1265. # ifndef XF86CardDrivers
  1266. #  define XF86CardDrivers    ati mga \
  1267.                 DevelDrivers \
  1268.                 XF86OSCardDrivers XF86ExtraCardDrivers
  1269. # endif
  1270. # if HasGlide3
  1271. #  define TdfxDriDriver        
  1272. # else
  1273. #  define TdfxDriDriver        /**/
  1274. # endif
  1275. # ifndef DriDrivers
  1276. #  define DriDrivers        gamma r128
  1277. # endif
  1278. #endif
  1279.  
  1280. /*
  1281.  * For Mips/Arc platforms, the default is to build all modules which
  1282.  * are supported on this platform.
  1283.  */
  1284. #ifdef ArcArchitecture
  1285. # ifndef XF86Server
  1286. #  define XF86Server        YES
  1287. # endif
  1288. #endif
  1289.  
  1290. #if BuildDebug
  1291. # define DebugDefines -DBUILDDEBUG
  1292. #else
  1293. # define DebugDefines /**/
  1294. #endif
  1295.  
  1296. #ifndef XF86Server
  1297. # define XF86Server        NO
  1298. #endif
  1299. #if !XF86Server
  1300. # undef DoLoadableServer
  1301. # define DoLoadableServer    NO
  1302. #endif
  1303.  
  1304. /*
  1305.  * Fbdev module defines.  They are set to indicate the fb types supported
  1306.  * on different architectures.
  1307.  */
  1308. #ifndef XF86AFB
  1309. # define XF86AFB        NO
  1310. #endif
  1311. #ifndef XF86ILBM
  1312. # define XF86ILBM        NO
  1313. #endif
  1314. #ifndef XF86IPLAN2P2
  1315. # define XF86IPLAN2P2        NO
  1316. #endif
  1317. #ifndef XF86IPLAN2P4
  1318. # define XF86IPLAN2P4        NO
  1319. #endif
  1320. #ifndef XF86IPLAN2P8
  1321. # define XF86IPLAN2P8        NO
  1322. #endif
  1323. #if XF86AFB
  1324. AFB_DEFS = -DUSE_AFB
  1325. #endif
  1326. #if XF86ILBM
  1327. ILBM_DEFS = -DUSE_ILBM
  1328. #endif
  1329. #if XF86IPLAN2P2
  1330. IPLAN2P2_DEFS = -DUSE_IPLAN2P2
  1331. #endif
  1332. #if XF86IPLAN2P4
  1333. IPLAN2P4_DEFS = -DUSE_IPLAN2P4
  1334. #endif
  1335. #if XF86IPLAN2P8
  1336. IPLAN2P8_DEFS = -DUSE_IPLAN2P8
  1337. #endif
  1338. #ifndef FbdevDefines
  1339. # define FbdevDefines $(AFB_DEFS) $(ILBM_DEFS) $(IPLAN2P2_DEFS) \
  1340.              $(IPLAN2P4_DEFS) $(IPLAN2P8_DEFS)
  1341. #endif
  1342.  
  1343. /*
  1344.  * The default is to install the X servers setuid-root on most OSs.
  1345.  * It the servers are only started by xdm, they should not be setuid-root.
  1346.  */
  1347. #if !defined(i386MachArchitecture) && !defined(OS2Architecture)
  1348. # ifndef InstallXserverSetUID
  1349. #  define InstallXserverSetUID    YES
  1350. # endif
  1351. #endif
  1352.  
  1353. /*
  1354.  * Build GLX server interface
  1355.  *   --- Doesn't work for 1-bit and 4-bit servers
  1356.  */
  1357. #ifndef BuildGlxExt
  1358. #  define BuildGlxExt    YES
  1359. #endif
  1360.  
  1361. #ifndef BuildXF86DRI
  1362. #define BuildXF86DRI    NO
  1363. #endif
  1364.  
  1365. #ifndef GlxUseSGISI
  1366. #define GlxUseSGISI    NO
  1367. #endif
  1368.  
  1369. #if BuildXF86DRI
  1370.  
  1371. #ifndef BuildGLXLibrary
  1372. #  if defined (BuildServersOnly) && BuildServersOnly
  1373. #    define BuildGLXLibrary    NO
  1374. #  else
  1375. #    define BuildGLXLibrary    YES
  1376. #  endif
  1377. #endif
  1378.  
  1379. /*
  1380.  * One and ONLY one of the GlxBuiltIn* drivers can be defined to be YES.
  1381.  * If more than one are defined, the compilation will fail with multiply
  1382.  * defined references of GLX and OpenGL functions.
  1383.  */
  1384.  
  1385. /*
  1386.  * The first is a built-in driver that does software rendering client-side
  1387.  * and renders to the X server via Xlib.
  1388.  */
  1389.  
  1390. #  ifndef GlxBuiltInXMesa
  1391. #    define GlxBuiltInXMesa         NO
  1392. #  endif
  1393.  
  1394. /*
  1395.  * The rest are hardware-specific DRI drivers.
  1396.  */
  1397. #  ifndef GlxBuiltInGamma
  1398. #    define GlxBuiltInGamma        NO
  1399. #  endif
  1400. #  ifndef GlxBuiltInTdfx
  1401. #    define GlxBuiltInTdfx         NO
  1402. #  endif
  1403. #  ifndef GlxBuiltInMga
  1404. #    define GlxBuiltInMga          NO
  1405. #  endif
  1406. #  ifndef GlxBuiltInI810
  1407. #    define GlxBuiltInI810         NO
  1408. #  endif
  1409. #  ifndef GlxBuiltInI830
  1410. #    define GlxBuiltInI830         NO
  1411. #  endif
  1412. #  ifndef GlxBuiltInR128
  1413. #    define GlxBuiltInR128         NO
  1414. #  endif
  1415. #  ifndef GlxBuiltInRadeon
  1416. #    define GlxBuiltInRadeon       NO
  1417. #  endif
  1418. #  ifndef GlxBuiltInR200
  1419. #    define GlxBuiltInR200         NO
  1420. #  endif
  1421. #  ifndef GlxBuiltInFfb
  1422. #    define GlxBuiltInFfb          NO
  1423. #  endif
  1424. #  ifndef GlxBuiltInSIS
  1425. #    define GlxBuiltInSIS          NO
  1426. #  endif
  1427.  
  1428. #  if GlxBuiltInTdfx || \
  1429.       GlxBuiltInMga || \
  1430.       GlxBuiltInI810 || \
  1431.       GlxBuiltInI830 || \
  1432.       GlxBuiltInR128 || \
  1433.       GlxBuiltInRadeon || \
  1434.       GlxBuiltInR200 || \
  1435.       GlxBuiltInFfb || \
  1436.       GlxBuiltInSIS
  1437. #    define GlxDriverUsesMesa      YES
  1438. #  else
  1439. #    define GlxDriverUsesMesa      NO
  1440. #  endif
  1441.  
  1442. #  if GlxBuiltInGamma || \
  1443.       GlxBuiltInTdfx || \
  1444.       GlxBuiltInMga || \
  1445.       GlxBuiltInI810 || \
  1446.       GlxBuiltInI830 || \
  1447.       GlxBuiltInR128 || \
  1448.       GlxBuiltInRadeon || \
  1449.       GlxBuiltInR200 || \
  1450.       GlxBuiltInFfb || \
  1451.       GlxBuiltInSIS
  1452. #    define GlxUseBuiltInDRIDriver YES
  1453. #    define DRIDynLoadDefines /**/
  1454. #  else
  1455. #    define GlxUseBuiltInDRIDriver NO
  1456. #    define DRIDynLoadDefines -DGLX_USE_DLOPEN
  1457. #  endif
  1458.  
  1459. #  if GlxUseBuiltInDRIDriver
  1460. #    undef DriDrivers
  1461. #    if GlxBuiltInGamma
  1462. #      define DriDrivers gamma
  1463. #    endif
  1464. #    if GlxBuiltInTdfx
  1465. #      define DriDrivers tdfx
  1466. #    endif
  1467. #    if GlxBuiltInMga
  1468. #      define DriDrivers mga
  1469. #    endif
  1470. #    if GlxBuiltInI810
  1471. #      define DriDrivers i810
  1472. #    endif
  1473. #    if GlxBuiltInI830
  1474. #      define DriDrivers i830
  1475. #    endif
  1476. #    if GlxBuiltInR128
  1477. #      define DriDrivers r128
  1478. #    endif
  1479. #    if GlxBuiltInRadeon
  1480. #      define DriDrivers radeon
  1481. #    endif
  1482. #    if GlxBuiltInR200
  1483. #      define DriDrivers r200
  1484. #    endif
  1485. #    if GlxBuiltInSIS
  1486. #      define DriDrivers sis
  1487. #    endif
  1488. #    if GlxBuiltInFfb
  1489. #      define DriDrivers ffb
  1490. #    endif
  1491. #  endif
  1492.  
  1493. #endif
  1494.  
  1495. /*
  1496.  * This enables building DRI support into video drivers, which can be done
  1497.  * even on platforms that don't have functional DRI support.
  1498.  *
  1499.  * Defining BuildXF86DRIDriverSupport to YES will not work until we have a
  1500.  * separate set of defines set up for building driver-only support for the
  1501.  * DRI.
  1502.  */
  1503. #ifndef BuildXF86DRIDriverSupport
  1504. # define BuildXF86DRIDriverSupport NO
  1505. #endif
  1506.  
  1507. #if BuildGlxExt
  1508.  
  1509. #  if BuildXF86DRI
  1510. #    define DRIDefines -DXF86DRI -DGLX_DIRECT_RENDERING DRIDynLoadDefines
  1511. #  else
  1512. #    define DRIDefines /**/
  1513. #  endif
  1514. #  if defined(GlxUseSGISI) && GlxUseSGISI
  1515. #    define GlxCoreLibDefines -DGLX_USE_SGI_SI
  1516. #  else
  1517. #    define GlxCoreLibDefines -DGLX_USE_MESA
  1518. #  endif
  1519.  
  1520. #  if defined(SparcArchitecture)  \
  1521.    || defined (Sparc64Architecture) \
  1522.    || defined(ia64Architecture) \
  1523.    || defined(s390xArchitecture) \
  1524.    || defined(AMD64Architecture)
  1525. #    define GlxArchDefines -D__GLX_ALIGN64
  1526. #  elif defined(AlphaArchitecture)
  1527. /* On the Alpha we need to ensure floating point accuracy for 3D */
  1528. #    define GlxArchDefines -D__GLX_ALIGN64 -mieee
  1529. #  elif defined(DarwinArchitecture)
  1530. /* GLX contains lots of uninitialized globals, which can upset Darwin */
  1531. #    define GlxArchDefines -fno-common
  1532. #  else
  1533. #    define GlxArchDefines /**/
  1534. #  endif
  1535.  
  1536. #  ifndef GlxExtraDefines
  1537. #    define GlxExtraDefines DRIDefines GlxCoreLibDefines GlxArchDefines
  1538. #  endif
  1539.  
  1540. #else
  1541.  
  1542. /* If we are not building GLX, then make sure the DRI is not built */
  1543. #  undef  BuildXF86DRI
  1544. #  define BuildXF86DRI   NO
  1545. #  undef  BuildXF86DRIDriverSupport
  1546. #  define BuildXF86DRIDriverSupport NO
  1547.  
  1548. #endif
  1549.  
  1550. #if !BuildXF86DRI
  1551. # define GlxUseBuiltInDRIDriver NO    /* For libOSmesa */
  1552. #endif
  1553.  
  1554. # ifndef UseX86Emu
  1555. #  define UseX86Emu        YES
  1556. # endif
  1557.  
  1558. #define X86INT10_STUB   0
  1559. #define X86EMU_GENERIC  1
  1560. #define X86VM           2
  1561. #define X86EMU_OS       3
  1562.  
  1563. #ifndef XF86INT10_BUILD
  1564. # if UseX86Emu
  1565. #  define XF86INT10_BUILD        X86EMU_GENERIC
  1566. # else
  1567. #  define XF86INT10_BUILD        X86INT10_STUB
  1568. # endif
  1569. #endif
  1570. /*
  1571.  * Build the Rush extension library (non standard extension for cooperation
  1572.  * between glide library and X server). Enabled by default only for Linux.
  1573.  */
  1574. #ifndef BuildXF86RushExt
  1575. # define BuildXF86RushExt    NO
  1576. #endif
  1577.  
  1578. #ifndef BuildDBElib
  1579. # define BuildDBElib    YES
  1580. #endif
  1581.  
  1582. #ifndef BuildRECORDlib
  1583. # define BuildRECORDlib    YES
  1584. #endif
  1585.  
  1586. #ifndef BuildXKBlib
  1587. # define BuildXKBlib    YES
  1588. #endif
  1589.  
  1590. #ifndef BuildScreenSaverExt
  1591. # define BuildScreenSaverExt    YES
  1592. #endif
  1593.  
  1594. /*
  1595.  * Build XInput support
  1596.  */
  1597. #ifndef BuildXInputExt
  1598. # define BuildXInputExt        YES
  1599. #endif
  1600.  
  1601. /* Build Xinerama (aka panoramiX) extension */
  1602. #ifndef BuildXinerama
  1603. # define BuildXinerama        YES
  1604. #endif
  1605.  
  1606. /* Build Render extension */
  1607. #ifndef BuildRender
  1608. # define BuildRender        YES
  1609. #endif
  1610.  
  1611. #if 0
  1612. #ifndef JoystickSupport
  1613. # define JoystickSupport    NO
  1614. #endif
  1615. #endif
  1616.  
  1617. #if 0
  1618. /*
  1619.  * Build the extra extension libs even when not including the extra extensions
  1620.  * in the servers
  1621.  */
  1622. #ifndef BuildScreenSaverLibrary
  1623. # define BuildScreenSaverLibrary   YES
  1624. #endif
  1625. #ifndef BuildXF86MiscLibrary
  1626. # define BuildXF86MiscLibrary    YES
  1627. #endif
  1628. #ifndef BuildXF86DGALibrary
  1629. # define BuildXF86DGALibrary    YES
  1630. #endif
  1631. #ifndef BuildXF86VidModeLibrary
  1632. # define BuildXF86VidModeLibrary YES
  1633. #endif
  1634. #ifndef BuildXvLibrary
  1635. # define BuildXvLibrary        YES
  1636. #endif
  1637. #ifndef BuildXvMCLibrary
  1638. # define BuildXvMCLibrary    YES
  1639. #endif
  1640. #ifndef BuildGLXLibrary
  1641. # define BuildGLXLibrary    YES
  1642. #endif
  1643. #ifndef BuildXResLibrary
  1644. # define BuildXResLibrary       YES
  1645. #endif
  1646. #endif
  1647.  
  1648. /*
  1649.  * Build the XFree86-VidMode extension
  1650.  */
  1651. #ifndef BuildXF86VidModeExt
  1652. # define BuildXF86VidModeExt        YES
  1653. #endif
  1654.  
  1655. /* Don't build this now because the interface hasn't been done yet */
  1656. /*
  1657.  * Build the XFree86-Misc extension
  1658.  */
  1659. #ifndef BuildXF86MiscExt
  1660. # define BuildXF86MiscExt        YES
  1661. #endif
  1662.  
  1663. /*
  1664.  * Build the XFree86-Bigfont extension
  1665.  */
  1666. #ifndef BuildXF86BigfontExt
  1667. # define BuildXF86BigfontExt        YES
  1668. #endif
  1669.  
  1670. /*
  1671.  * Build the XFree86 DGA support
  1672.  */
  1673. #ifndef BuildXF86DGA
  1674. # define BuildXF86DGA            YES
  1675. #endif
  1676.  
  1677. /*
  1678.  * Build the DPMS extension support
  1679.  */
  1680. #ifndef BuildDPMSExt
  1681. # define BuildDPMSExt            YES
  1682. #endif
  1683.  
  1684. /*
  1685.  * Build the X Video Extension
  1686.  */
  1687. #ifndef BuildXvExt
  1688. # define BuildXvExt            YES
  1689. #endif
  1690.  
  1691. /*
  1692.  * Build the X Video Motion Compensation Extension
  1693.  */
  1694. #ifndef BuildXvMCExt
  1695. # define BuildXvMCExt            YES
  1696. #endif
  1697.  
  1698. /*
  1699.  * Build the X-Resource Extension 
  1700.  */
  1701. #ifndef BuildXResExt
  1702. # define BuildXResExt                   YES
  1703. #endif
  1704.  
  1705. #if Malloc0ReturnsNull
  1706. # ifndef XtMalloc0ReturnsNullDefines
  1707. #  define XtMalloc0ReturnsNullDefines    Malloc0ReturnsNullDefines -DXTMALLOC_BC
  1708. # endif
  1709. #endif
  1710.  
  1711. #ifndef UseInternalMalloc
  1712. # define UseInternalMalloc    NO
  1713. #endif
  1714.  
  1715. #ifndef HasDlsymBug
  1716. # define HasDlsymBug        NO
  1717. #endif
  1718.  
  1719. #ifndef HasMTRRSupport
  1720. # define HasMTRRSupport        NO
  1721. #endif
  1722.  
  1723. /*
  1724.  * Build the font server
  1725.  */
  1726. #ifndef BuildFontServer
  1727. # define BuildFontServer    YES
  1728. #endif
  1729.  
  1730. /*
  1731.  * Include fonts support
  1732.  */
  1733. #ifndef BuildSpeedo
  1734. # define BuildSpeedo        NO
  1735. #endif
  1736.  
  1737. #ifndef BuildType1
  1738. # define BuildType1        NO
  1739. #endif
  1740.  
  1741. #ifndef BuildCID
  1742. # define BuildCID        YES
  1743. #endif
  1744.  
  1745. #ifndef BuildFreeType
  1746. # define BuildFreeType        YES
  1747. #endif
  1748.  
  1749. /*
  1750.  * By default, build all of the fonts.
  1751.  */
  1752. #ifndef Build75DpiFonts
  1753. # define Build75DpiFonts    YES
  1754. #endif
  1755. #ifndef Build100DpiFonts
  1756. # define Build100DpiFonts    YES
  1757. #endif
  1758. #ifndef BuildSpeedoFonts
  1759. # define BuildSpeedoFonts    NO
  1760. #endif
  1761. #ifndef BuildType1Fonts
  1762. # define BuildType1Fonts    YES
  1763. #endif
  1764. #ifndef BuildCIDFonts
  1765. # define BuildCIDFonts        YES
  1766. #endif
  1767. #ifndef BuildTrueTypeFonts
  1768. # define BuildTrueTypeFonts    YES
  1769. #endif
  1770. #ifndef BuildCyrillicFonts
  1771. # define BuildCyrillicFonts    YES
  1772. #endif
  1773.  
  1774. /*
  1775.  * Build scanpci?
  1776.  */
  1777. #ifndef SystemV
  1778. #define SystemV            NO
  1779. #endif
  1780. #ifndef SystemV4
  1781. #define SystemV4        NO
  1782. #endif
  1783. #ifndef BuildScanpci
  1784. # if SystemV || SystemV4 || \
  1785.     defined(LinuxArchitecture) || \
  1786.     defined(i386BsdArchitecture) || defined(LynxOSArchitecture) || \
  1787.     defined(OS2Architecture) || defined(GNUMachArchitecture) || \
  1788.     (defined(KFreeBSDArchitecture) && defined(i386Architecture))
  1789. #   define BuildScanpci        YES
  1790. # else
  1791. #   define BuildScanpci        NO
  1792. # endif
  1793. #endif
  1794.  
  1795. #ifndef CompressAllFonts
  1796. # define CompressAllFonts    YES
  1797. #endif
  1798.  
  1799. #ifndef GzipFontCompression
  1800. # define GzipFontCompression    YES
  1801. #endif
  1802.  
  1803. /* Disable stripping installed programs for this release. */
  1804. #ifndef StripInstalledPrograms
  1805. # define StripInstalledPrograms    NO
  1806. #endif
  1807.  
  1808. #ifndef InstallJapaneseDocs
  1809. #define InstallJapaneseDocs    NO
  1810. #endif
  1811.  
  1812. #if BuildXF86DGA
  1813. # define XFree86DGADefines    -DXFreeXDGA
  1814. #else
  1815. # define XFree86DGADefines    /**/
  1816. #endif
  1817.  
  1818. #if BuildXvExt
  1819. # define XFree86XvDefines    -DXvExtension
  1820. #else
  1821. # define XFree86XvDefines    /**/
  1822. #endif
  1823.  
  1824. #if BuildXvMCExt
  1825. # define XFree86XvMCDefines    -DXvMCExtension
  1826. #else
  1827. # define XFree86XvMCDefines    /**/
  1828. #endif
  1829.  
  1830. #if BuildXResExt
  1831. # define XFree86XResDefines     -DXResExtension
  1832. #else
  1833. # define XFree86XResDefines     /**/
  1834. #endif
  1835.  
  1836. #ifndef DlopenHack
  1837. # define DlopenHack        -DDLOPEN_HACK
  1838. #endif
  1839.  
  1840. #ifndef ExtraLoaderDefines
  1841. # if MakeDllModules
  1842. #  define ExtraLoaderDefines    DlopenHack
  1843. # else
  1844. #  define ExtraLoaderDefines    /**/
  1845. # endif
  1846. #endif
  1847.  
  1848. #if DoLoadableServer
  1849. # define XFree86LoaderDefines    -DXFree86LOADER ExtraLoaderDefines
  1850. #else
  1851. # define XFree86LoaderDefines    /**/
  1852. #endif
  1853.  
  1854. #ifndef HasBsdMake
  1855. #define HasBsdMake        NO
  1856. #endif
  1857.  
  1858. #ifndef MakeHasPosixVariableSubstitutions
  1859. # if !HasBsdMake && !defined(SunArchitecture)
  1860. #  define MakeHasPosixVariableSubstitutions    NO
  1861. # else
  1862. #  define MakeHasPosixVariableSubstitutions    YES
  1863. # endif
  1864. #endif
  1865.  
  1866. #ifndef UseSmartScheduler
  1867. #define UseSmartScheduler YES
  1868. #endif
  1869.  
  1870. #if UseSmartScheduler
  1871. #define SmartScheduleDefines -DSMART_SCHEDULE
  1872. #else
  1873. #define SmartScheduleDefines /**/
  1874. #endif
  1875.  
  1876. /* Server defines required for all OSs */
  1877. #ifndef XFree86ServerDefines
  1878. # define XFree86ServerDefines    -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH \
  1879.                 XFree86DGADefines XFree86XvDefines \
  1880.                 XFree86LoaderDefines -DXFree86Server \
  1881.                 VidModeExtensionDefines \
  1882.                 XFree86XvMCDefines \
  1883.                 SmartScheduleDefines \
  1884.                 DebugDefines XFree86XResDefines \
  1885.                 -DX_BYTE_ORDER=$(X_BYTE_ORDER)
  1886. #endif
  1887.  
  1888. #ifndef XFree86ServerOSDefines
  1889. # define XFree86ServerOSDefines    -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \
  1890.                 -DDDXOSVERRORF
  1891. #endif
  1892.  
  1893. #ifndef XFree86ConsoleDefines
  1894. # if defined(i386BsdArchitecture) || defined(AlphaBsdArchitecture) || (defined(KFreeBSDArchitecture) && defined(i386Architecture))
  1895. #  define XFree86ConsoleDefines    -DPCCONS_SUPPORT -DSYSCONS_SUPPORT -DPCVT_SUPPORT
  1896. # elif defined(KFreeBSDArchitecture)
  1897. #  define XFree86ConsoleDefines -DSYSCONS_SUPPORT
  1898. # else
  1899. #  define XFree86ConsoleDefines    /**/
  1900. # endif
  1901. #endif
  1902.  
  1903. /* Support for USB mouse */
  1904. #ifndef UsbMouseSupport
  1905. # define UsbMouseSupport NO
  1906. #endif
  1907. /* Does this OS have libusb ? */
  1908. #ifndef HasLibUsb
  1909. # define HasLibUsb    NO
  1910. #endif
  1911.  
  1912. #ifndef UseServerLock
  1913. # define UseServerLock    YES
  1914. #endif
  1915.  
  1916. #ifndef XnestServer
  1917. # define XnestServer        YES
  1918. #endif
  1919. #ifndef XVirtualFramebufferServer
  1920. # define XVirtualFramebufferServer    YES
  1921. #endif
  1922. #ifndef XprtServer
  1923. # define XprtServer            YES
  1924. #endif
  1925.  
  1926. #ifndef ServerExtraDefines
  1927. # define ServerExtraDefines    XFree86ServerDefines
  1928. #endif
  1929.  
  1930. #ifndef ServerOSDefines
  1931. # define ServerOSDefines    XFree86ServerOSDefines
  1932. #endif
  1933.  
  1934. #ifndef DriverSDKDir
  1935. # define DriverSDKDir     $(USRLIBDIR)/Server
  1936. #endif
  1937.  
  1938. #ifndef DriverSDKModuleDir
  1939. # define DriverSDKModuleDir     $(USRLIBDIR)/Server/modules
  1940. #endif
  1941.  
  1942. #ifndef DriverSDKIncludeDir
  1943. # define DriverSDKIncludeDir     $(USRLIBDIR)/Server/include
  1944. #endif
  1945.  
  1946. DRIVERSDKDIR = DriverSDKDir
  1947. DRIVERSDKMODULEDIR = DriverSDKModuleDir
  1948. DRIVERSDKINCLUDEDIR = DriverSDKIncludeDir
  1949.  
  1950. /*
  1951.  * Some commonly refered to directories are defined here.
  1952.  */
  1953.  
  1954.        XF86SRC = $(SERVERSRC)/hw/xfree86
  1955.     XF86COMSRC = $(XF86SRC)/common
  1956.  XF86PARSERSRC = $(XF86SRC)/parser
  1957.      XF86OSSRC = $(XF86SRC)/os-support
  1958.  XF86DRIVERSRC = $(XF86SRC)/drivers
  1959.      DRIVERSRC = $(XF86DRIVERSRC)
  1960.  
  1961. /*
  1962.  * Installed location of the XFree86 documentation
  1963.  */
  1964.  
  1965.         XFREE86DOCDIR = $(DOCDIR)
  1966.       XFREE86PSDOCDIR = $(DOCPSDIR)
  1967.      XFREE86PDFDOCDIR = $(DOCPDFDIR)
  1968.     XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
  1969. XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
  1970.  
  1971. /*
  1972.  * Other stuff used in the X Server source.
  1973.  */
  1974.  
  1975. #ifndef OtherIConfigFiles
  1976. # define OtherIConfigFiles $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules
  1977. #endif
  1978.  
  1979. #ifndef UseRgbTxt
  1980. # define UseRgbTxt    YES
  1981. #endif
  1982.  
  1983. /*
  1984.  * GNU Compiler stuff
  1985.  */
  1986. #ifndef HasGcc3
  1987. # define HasGcc3 NO
  1988. #endif
  1989. #ifndef HasGcc2
  1990. # define HasGcc2 HasGcc3
  1991. #endif
  1992. #ifndef HasGcc
  1993. # define HasGcc HasGcc2
  1994. #endif
  1995. #ifndef HasGcc2ForCplusplus
  1996. # define HasGcc2ForCplusplus HasGcc2
  1997. #endif
  1998.  
  1999. #if HasGcc
  2000. # ifndef Gcc28Warnings
  2001. #  if (GccMajorVersion > 2) || \
  2002.       ((GccMajorVersion == 2) && (GccMinorVersion >= 8))
  2003. #   define Gcc28Warnings -Wundef
  2004. #  else
  2005. #   define Gcc28Warnings /* */
  2006. #  endif
  2007. # endif
  2008. # ifndef GccWarningOptions
  2009. #  if XFree86Devel
  2010. #   define GccWarningOptions -Wall -Wpointer-arith -Wstrict-prototypes \
  2011.               -Wmissing-prototypes -Wmissing-declarations \
  2012.               -Wredundant-decls -Wnested-externs Gcc28Warnings
  2013. #  else
  2014. #   define GccWarningOptions -Wall -Wpointer-arith Gcc28Warnings
  2015. #  endif
  2016. # endif
  2017. # ifndef DefaultCCOptions
  2018. #  if defined(UseInstalled)
  2019. #   define DefaultCCOptions /* -ansi */
  2020. #  else
  2021. #   define DefaultCCOptions -ansi GccWarningOptions
  2022. #  endif
  2023. # endif
  2024. # if defined(UseInstalled)
  2025. #  ifndef UseGccMakeDepend
  2026. #   define UseGccMakeDepend YES
  2027. #  endif
  2028. # endif
  2029. #endif
  2030.  
  2031. /* Make imake noisier.  Note that this is ineffective for 3.0 <= GCC <= 3.2 */
  2032. #ifndef ImakeWarningFlags
  2033. # ifdef Gcc28Warnings
  2034. #  define ImakeWarningFlags Gcc28Warnings
  2035. # else
  2036. #  define ImakeWarningFlags /* */
  2037. # endif
  2038. #endif
  2039.  
  2040. #if  (GccMajorVersion == 3) &&  (GccMinorVersion >= 1)
  2041. # define GccAliasingArgs      -fno-strict-aliasing
  2042. #else
  2043. # define GccAliasingArgs      /* */
  2044. #endif
  2045.  
  2046. #if HasGcc2
  2047. # ifndef DefaultGcc2OptimizeOpt
  2048. #  define DefaultGcc2OptimizeOpt -O2
  2049. # endif
  2050. #endif
  2051.  
  2052. #if HasGcc2 && defined(i386Architecture)
  2053. # ifndef DefaultGcc2i386Opt
  2054. #  define DefaultGcc2i386Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  2055. # endif
  2056. #endif
  2057.  
  2058. #if HasGcc2 && defined(AMD64Architecture)
  2059. # ifndef DefaultGcc2AMD64Opt
  2060. #  define DefaultGcc2AMD64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  2061. # endif
  2062. #endif
  2063.  
  2064. #if HasGcc2 && defined(AlphaArchitecture)
  2065. # ifndef DefaultGcc2AxpOpt
  2066. #  define DefaultGcc2AxpOpt DefaultGcc2OptimizeOpt GccAliasingArgs
  2067. # endif
  2068. #endif
  2069.  
  2070. #if HasGcc2 && defined(Ppc64Architecture)
  2071. # ifndef DefaultGcc2Ppc64Opt
  2072. #  define DefaultGcc2Ppc64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  2073. # endif
  2074. #endif
  2075.  
  2076. #if HasGcc2 && defined(PpcArchitecture)
  2077. # ifndef DefaultGcc2PpcOpt
  2078. #  define DefaultGcc2PpcOpt DefaultGcc2OptimizeOpt GccAliasingArgs
  2079. # endif
  2080. #endif
  2081.  
  2082. #ifndef DefaultGcc2DebugOpt
  2083. # define DefaultGcc2DebugOpt -g
  2084. #endif
  2085.  
  2086. #ifndef DebuggableLibraries
  2087. # define DebuggableLibraries NO
  2088. #endif
  2089.  
  2090. #if HasGcc2 && DebuggableLibraries
  2091. # define LibraryDebugOpt DefaultGcc2DebugOpt
  2092. #endif
  2093.  
  2094. /*
  2095.  * Some versions of gcc have optimisation bugs that cause problems building
  2096.  * some files.  The definitions here cover those.
  2097.  */
  2098.  
  2099. #ifndef Egcs112Bug
  2100.   /* Not exactly precise, but it'll do for now... */
  2101. # if HasGcc2 && defined(i386Architecture) && \
  2102.      (GccMajorVersion == 2) && (GccMinorVersion > 8)
  2103. #  define Egcs112Bug YES
  2104. # else
  2105. #  define Egcs112Bug NO
  2106. # endif
  2107. #endif
  2108.  
  2109. #ifdef i386Architecture
  2110. # ifndef HasX86Support
  2111. #  define HasX86Support YES
  2112. # endif
  2113. # ifndef HasMMXSupport
  2114. #  define HasMMXSupport YES
  2115. # endif
  2116. # ifndef HasSSESupport
  2117. #  define HasSSESupport NO
  2118. # endif
  2119. # ifndef Has3DNowSupport
  2120. #  define Has3DNowSupport NO
  2121. # endif
  2122. #elif defined (AMD64Architecture)
  2123. # ifndef HasX86Support
  2124. #  define HasX86Support NO
  2125. # endif
  2126. # ifndef HasMMXSupport
  2127. #  define HasMMXSupport NO
  2128. # endif
  2129. # ifndef HasSSESupport
  2130. #  define HasSSESupport NO
  2131. # endif
  2132. # ifndef Has3DNowSupport
  2133. #  define Has3DNowSupport NO
  2134. # endif
  2135. #else 
  2136. # ifndef HasX86Support
  2137. #  define HasX86Support NO
  2138. # endif
  2139. # ifndef HasMMXSupport
  2140. #  define HasMMXSupport NO
  2141. # endif
  2142. # ifndef HasSSESupport
  2143. #  define HasSSESupport NO
  2144. # endif
  2145. # ifndef Has3DNowSupport
  2146. #  define Has3DNowSupport NO
  2147. # endif
  2148. #endif
  2149.  
  2150. #ifndef StaticNeedsPicForShared
  2151. # if defined (AMD64Architecture)\
  2152.   || defined (AlphaArchitecture) \
  2153.   || defined (ia64Architecture) \
  2154.   || defined (PpcArchitecture) \
  2155.   || defined (SparcArchitecture) \
  2156.   || defined (s390xArchitecture) 
  2157. #  define StaticNeedsPicForShared YES
  2158. # else
  2159. #  define StaticNeedsPicForShared NO
  2160. # endif
  2161. #endif
  2162.  
  2163. #ifndef XF8_32Wid
  2164. # define XF8_32Wid        NO
  2165. #endif
  2166.  
  2167. #if CrossCompiling
  2168. #include <cross.def>
  2169. #endif
  2170. #include <xf86.rules>
  2171.  
  2172.